<?php

$config = array(

    'tags' => array(
        
        'selectItem' => array(
            'hasClosingTag' => false,
            'class' => 'Adept_Template_Component_Tag',
            'attributes' => array( 
                'title' => array(),
                'value' => array(),
                'disabled' => array('boolean' => true),
            ),
            'parameters' => array(
                'component' => 'Adept_Component_SelectItem', 
            )            
        ),
        
        'selectItems' => array(
            'hasClosingTag' => false,
            'class' => 'Adept_Template_Component_Tag',
            'attributes' => array( 
                'values' => array(),
                'valueProperty' => array(),
                'titleProperty' => array(),
            ),
            'parameters' => array(
                'component' => 'Adept_Component_SelectItems', 
            )            
        ),
    
        'set' => array(
            'hasClosingTag' => false,
            'class' => 'Adept_Template_Component_Tag',
            'attributes' => array( 
                'name' => array(),
                'value' => array(),
            ),
            'parameters' => array(
                'component' => 'Adept_Component_Set', 
            )
        ),    
    
        'listener' => array(
            'hasClosingTag' => false,
            'class' => 'Adept_Template_Component_Tag_Listener',
            'attributes' => array( 
                'event' => array(),
                'binding' => array(),
            ),
            'parameters' => array(
            )
        ),
        
        'validator' => array(
            'hasClosingTag' => false,
            'class' => 'Adept_Template_Component_Tag_Validator',
            'attributes' => array( 
                'class' => array(),
                'alias' => array(),
            ),
            'parameters' => array(
            )
        ),
    
        'converter' => array(
            'hasClosingTag' => false,
            'class' => 'Adept_Template_Component_Tag_Converter',
            'attributes' => array( 
                'class' => array(),
                'alias' => array(),
            ),
            'parameters' => array(
            )
        ),    
        
        'actiontrigger' => array(
            'hasClosingTag' => true,
            'class' => 'Adept_Template_Component_Tag',
            
            'attributes' => array( 
                'action' => array(),
            ),
            'parameters' => array(
                'component' => 'Adept_Component_ActionTrigger', 
                'strictChildren' => array(
                    'Adept_Template_Component_Tag_Listener',
                ),
            )    
        ),
        
        'optional' => array(
            'hasClosingTag' => true,
            'class' => 'Adept_Template_Component_Tag',
            'attributes' => array( 
                'cond' => array(),
            ),        
            'parameters' => array(
                'component' => 'Adept_Component_Optional',    
            )
        ),
        
        'default' => array(
            'hasClosingTag' => true,
            'class' => 'Adept_Template_Component_Tag',
            'attributes' => array( 
                'cond' => array(),
            ),        
            'parameters' => array(
                'component' => 'Adept_Component_Default',    
            )
        ),
                
        'list' => array(
            'hasClosingTag' => true,
            'class' => 'Adept_Template_Component_Tag',
            'attributes' => array( 
                'from' => array(),
                'key' => array(),
                'value' => array(),
            ),        
            'parameters' => array(
                'component' => 'Adept_Component_List',    
            ),
        ),
        
        'form' => array(
            'hasClosingTag' => true,
            'class' => 'Adept_Template_Component_Tag',
            'attributes' => array( 
                'accept' => array(),
                'acceptCharset' => array(),
                'action' => array(),
                'method' => array(),
                'name' => array(),
                'enctype' => array(),
                'target' => array(),
                
                'required' => array('boolean' => true),
                'converter' => array('methodBinding' => true),
                'rendererType' => array(),
                'rendered' => array('boolean' => true),
                
                'accessKey' => array(),
                'alt' => array(),
                'disabled' => array('boolean' => true),
                'tabIndex' => array(),
                'title' => array(),
                'class' => array(),
                'style' => array(),
            ),
            'parameters' => array(
                'component' => 'Adept_Component_Form',    
            )
        ),
        
        'label' => array(
            'hasClosingTag' => true,
            'class' => 'Adept_Template_Component_Tag',     
            'attributes' => array( 
                'for' => array(),
                'errorStyle' => array(),
                'errorClass' => array(),
            ),
            'parameters' => array(
                'component' => 'Adept_Component_Label',    
            )
        ),    
        
        'message' => array(
            'hasClosingTag' => false,
            'class' => 'Adept_Template_Component_Tag',     
            'attributes' => array( 
                'for' => array(),
                'group' => array(),
            ),
            'parameters' => array(
                'component' => 'Adept_Component_Message',    
            )
        ),
        
        'messagelist' => array(
            'hasClosingTag' => false,
            'class' => 'Adept_Template_Component_Tag',     
            'attributes' => array( 
                'group' => array(),
            ),
            'parameters' => array(
                'component' => 'Adept_Component_MessageList',    
            )
        ),
        
        
        
        'textBox' => array(
            'hasClosingTag' => true,
            'class' => 'Adept_Template_Component_Tag',
            
            'attributes' => array( 
                'binding' => array(),
                'readOnly' => array('boolean' => true),
                'maxLength' => array(),
                'size' => array(),
    
                'required' => array('boolean' => true),
                'rendered' => array('boolean' => true),
                'rendererType' => array(),
                'converter' => array('methodBinding' => true),
                
                'accessKey' => array(),
                'alt' => array(),
                'disabled' => array('boolean' => true),
                'tabIndex' => array(),
                'title' => array(),
                'class' => array(),
                'style' => array(),
                'value' => array(),
            ),
            'parameters' => array(
                'component' => 'Adept_Component_TextBox', 
                'strictChildren' => array(
                    'Adept_Template_Component_Tag_Listener',
                    'Adept_Template_Component_Tag_Validator',
                    'Adept_Template_Component_Tag_Converter',
                ),
            )
        ),
        
        'passwordBox' => array(
            'hasClosingTag' => true,
            'class' => 'Adept_Template_Component_Tag',
            
            'attributes' => array( 
                'binding' => array(),
                'readOnly' => array('boolean' => true),
                'maxLength' => array(),
                'size' => array(),
    
                'required' => array('boolean' => true),
                'rendered' => array('boolean' => true),
                'rendererType' => array(),
                'converter' => array('methodBinding' => true),
                
                'accessKey' => array(),
                'alt' => array(),
                'disabled' => array('boolean' => true),
                'tabIndex' => array(),
                'title' => array(),
                'class' => array(),
                'style' => array(),
                
            ),
            'parameters' => array(
                'component' => 'Adept_Component_PasswordBox', 
                'strictChildren' => array(
                    'Adept_Template_Component_Tag_Listener',
                    'Adept_Template_Component_Tag_Validator',
                    'Adept_Template_Component_Tag_Converter',
                ),
            )
        ),
        
        'textArea' => array(
            'hasClosingTag' => true,
            'class' => 'Adept_Template_Component_Tag',
            
            'attributes' => array( 
                'binding' => array(),
                'readOnly' => array('boolean' => true),
                'cols' => array(),
                'rows' => array(),
    
                'required' => array('boolean' => true),
                'rendered' => array('boolean' => true),
                'rendererType' => array(),
                'converter' => array('methodBinding' => true),
                
                'accessKey' => array(),
                'alt' => array(),
                'disabled' => array('boolean' => true),
                'tabIndex' => array(),
                'title' => array(),
                'class' => array(),
                'style' => array(),
                'value' => array(),
            ),
            'parameters' => array(
                'component' => 'Adept_Component_TextArea', 
                'strictChildren' => array(
                    'Adept_Template_Component_Tag_Listener',
                    'Adept_Template_Component_Tag_Validator',
                    'Adept_Template_Component_Tag_Converter',
                ),
            )
        ),        
        
        'listBox' => array(
            'hasClosingTag' => true,
            'class' => 'Adept_Template_Component_Tag', 
            
            'attributes' => array(
                'binding' => array(),
                'maxLength' => array(),
                'size' => array(),
    
                'required' => array('boolean' => true),
                'rendered' => array('boolean' => true),
                'rendererType' => array(),
                'converter' => array('methodBinding' => true),
                
                'accessKey' => array(),
                'alt' => array(),
                'disabled' => array('boolean' => true),
                'tabIndex' => array(),
                'title' => array(),
                'class' => array(),
                'style' => array(),       
                'value' => array(),                
            ),
            
            'parameters' => array(
                'component' => 'Adept_Component_ListBox',
                'browserEvents' => array('onselect', 'onchange'),
//                'strictChildren' => array(
//                    'Adept_Template_Component_Tag_Listener',
//                    'Adept_Template_Component_Tag_Converter',
//                    'Adept_Template_Component_Tag_Validator',
//                    'Adept_Template_Component_Tag',
//                ),
            )            
        ),
        
        
        'checkBox' => array(
            'hasClosingTag' => false,
            'class' => 'Adept_Template_Component_Tag',
            
            'attributes' => array( 
                'binding' => array(),
                'required' => array('boolean' => true),
                'rendered' => array('boolean' => true),
                'rendererType' => array(),
                'converter' => array('methodBinding' => true),
                
                'accessKey' => array(),
                'alt' => array(),
                'disabled' => array('boolean' => true),
                'tabIndex' => array(),
                'title' => array(),
                'class' => array(),
                'style' => array(),
                'label' => array(),
                'value' => array(),
            ),
            'parameters' => array(
                'component' => 'Adept_Component_CheckBox', 
                'strictChildren' => array(
                    'Adept_Template_Component_Tag_Listener',
                    'Adept_Template_Component_Tag_Validator',
                    'Adept_Template_Component_Tag_Converter',
                ),
            )
        ),   
        
        'radioButton' => array(
            'hasClosingTag' => false,
            'class' => 'Adept_Template_Component_Tag',
            
            'attributes' => array( 
                'binding' => array(),
                'required' => array('boolean' => true),
                'rendered' => array('boolean' => true),
                'rendererType' => array(),
                'converter' => array('methodBinding' => true),
                
                'accessKey' => array(),
                'alt' => array(),
                'disabled' => array('boolean' => true),
                'tabIndex' => array(),
                'title' => array(),
                'class' => array(),
                'style' => array(),
                'label' => array(),
                'group' => array(),
                'value' => array(),                
            ),
            'parameters' => array(
                'component' => 'Adept_Component_RadioButton', 
                'strictChildren' => array(
                    'Adept_Template_Component_Tag_Listener',
                    'Adept_Template_Component_Tag_Validator',
                    'Adept_Template_Component_Tag_Converter',
                ),
            )
        ),             
        
        'button' => array(
            'hasClosingTag' => true,
            'class' => 'Adept_Template_Component_Tag',
            
            'attributes' => array( 
                'title' => array(),
    
                'rendered' => array('boolean' => true),
                'rendererType' => array(),
                
                'accessKey' => array(),
                'alt' => array(),
                'disabled' => array('boolean' => true),
                'tabIndex' => array(),
                'class' => array(),
                'style' => array(),
            ),
            'parameters' => array(
                'component' => 'Adept_Component_Button',
                'strictChildren' => array('Adept_Template_Component_Tag_Listener'),
            )
        )
    ),
    'modificators' => array(
        
    ),
    
);
